Voltage controlled crystal oscillators (VCXOs) have a tendency to drift in frequency with variations in temperature. Each VCXO has a different characteristic of temperature vs. frequency drift which can be measured at a single point e.g. 24° C. and 8.61063 MHz. Then each oscillator will have a single point calibration e.g. 24° C. and 8.61063 MHz at which it is accurate. However, for the rest of the operating range e.g. −30° C. to +85° C. this will not be so. To correct this each of the temperature vs. frequency characteristics of the batch of VCXOs is averaged to provide an average or normal characteristic of frequency variation with temperature. This average variation can be compensated with equal and opposite values which can be stored in a table of frequency (ppm) vs. degrees ° C. and applied to the VCXO to provide proper average compensation. To improve the compensation for any given VCXO, the single point calibration intrinsic to it is applied to that PPM vs. ° C. table by shifting all PPM values by the same amount so that the 24° C. value is accurate. However, this still may result in error because the compensation is achieved by adjusting the control voltage of the VCXO to obtain the desired correction of frequency but the relationship between the control voltage and frequency is not linear and so some error still persists.